Generally, communication systems rely on coordination mechanisms to allow for the smooth operation of transmissions in shared access channels among multiple transmitters. For example, in wireless fidelity (WiFi) systems, under current IEEE 802.11 WLAN standards, a single communications channel may be shared by multiple stations (STAs). The transmission of data frames from the multiple STAs is coordinated by a distributed channel access function (e.g., a distributed coordination function (DCF) based on asynchronous distributed carrier sense multiple access with collision avoidance (CSMA/CA) mechanism).
Under this scheme, a STA with a data frame for transmission first performs a clear channel assessment (CCA) by sensing the wireless channel for a fixed duration of time (e.g., a DCF inter-frame space (DIFS)). If the STA senses the channel is busy, the STA waits until the channel is clear for an entire DIFS. The STA then further waits a random backoff period before transmitting the data frame. The random backoff period is implemented via a backoff timer having multiple backoff time slots, and the backoff timer decreases by one slot each time the channel is idle for a time slot. The backoff timer freezes whenever the STA senses the channel is busy. When the backoff timer reaches zero, the STA starts the frame transmission.
If the data is received successfully, the receiver (e.g., an access point (AP)) will indicate successful data receipt to the transmitting STA, for example, by sending an acknowledgement (ACK) frame. If the transmitting STA does not receive an ACK during a predetermined time interval, the transmitting STA assumes a collision has occurred and retransmits the data frame after another random backoff period. Each time a frame is not acknowledged, the transmitting STA doubles its backoff window in which a random backoff counter is selected, until the maximum backoff window is reached. This doubling of random backoff periods every time a transmission fails is known as exponential backoff.
Generally, this system works well for collision avoidance and resolution in systems where STAs can effectively sense other STAs using the channel. However, the system may not work well when transmitting STAs are hidden from each other (e.g., other STAs accessing the channel may be outside of a particular STA's sensing coverage). In systems having a large number of STAs the risk of hidden STAs may be quite high, and the number of collisions may be severe. Furthermore, while collision resolution using exponential backoff may reduce the probability of collisions in retransmission, a doubled backoff window leads to longer access delay and degrades the quality of service (QoS) performance of STAs. Additionally, each time a collision occurs, both colliding STAs must retransmit their data frames leading to inefficient channel utilization and wasted system resources (e.g., channel air time and battery power). In current WiFi systems, channel utilization efficiency could be less than 40% due to collisions and the involved collision avoidance and resolution overheads. That is, idle channel periods caused by the implementation of interframe spaces (e.g., DIFS) and random backoff periods may be relatively high.